package com.aiti.lulian.service;

import com.aiti.base.core.utils.message.Message;
import com.aiti.lulian.dto.LuLianDockingMeetingDetailsDto;
import com.aiti.lulian.entity.LuLianDockingMeetingDetails;
import com.aiti.lulian.entity.LuLianGys;
import com.aiti.lulian.entity.LuLianSupplier;
import com.aiti.lulian.entity.LulianActivty;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;

/**
 * @Author chenxianzhen
 * @create 2024/6/13 10:39
 */
public interface ILulianActivityService {
    List<LulianActivty> getHomeData(String baseId);

    void saveGys(LuLianGys luLianGys);

    /**
     * 创建线下活动
     * @param details 活动信息
     * @param userId 操作人Id
     * @return 结果
     */
    Message createLineDownActivity(LuLianDockingMeetingDetails details,String userId);

    /**
     * 通过Id获取线下活动详情
     * @param lineDownId 活动Id
     * @return 结果
     */
    Message getLineDownActivityById(String lineDownId, String userId);

    /**
     * 修改线下活动数据
     * @param details 详情
     * @return 结果
     */
    Message updateLineDownActivity(LuLianDockingMeetingDetails details,String userId);

    /**
     * 分页查询线下活动
     * @param page
     * @param detailsDto
     * @return
     */
    Page<LuLianDockingMeetingDetails> getPageLineDownActivityList(Page<LuLianDockingMeetingDetails> page, LuLianDockingMeetingDetailsDto detailsDto);

    List<LuLianDockingMeetingDetails> queryCurrentUserActivitiesPage(Page<LuLianDockingMeetingDetails> page, String userId, LuLianDockingMeetingDetailsDto details);

    /**
     * 查询当前用户报名中的活动
     * @param userId 用户Id
     * @return
     */
    List<LuLianDockingMeetingDetails> queryCurrentUserActivities(String userId,String roleId);

}
